/*
 * @Description:
 * @author:
 * @since: yyyy-MM-dd
 * @page: xxxx.vue
 */
import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import eslintPlugin from 'vite-plugin-eslint' //用于在 Vite 项目中启用 ESLint 插件
import { VantResolver } from '@vant/auto-import-resolver' //用于自动导入 Vant 组件样式
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite' //解析组件
export default defineConfig({
  plugins: [
    vue(), //用于将 Vue.js 的功能添加到项目中
    eslintPlugin({
      include: ['src/**/*.ts', 'src/**/*.vue', 'src/*.ts', 'src/*.vue'],
    }),
    AutoImport({
      resolvers: [VantResolver()],
    }),
    Components({
      resolvers: [VantResolver()],
    }),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url)), //表示从当前模块URL到src目录的相对路径
    },
  },
  server: {
    // 监听所有地址
    host: '0.0.0.0',
    // 服务启动时是否自动打开浏览器
    open: true,
    // 允许跨域
    cors: true,
    // 自定义代理规则
  },
  css: {
    preprocessorOptions: {
      less: {
        additionalData: `@import "./src/styles/global.less";`, // 此处全局的scss文件，可引多个
      },
    },
  },
})
